using System;
using System.Collections.Generic;

namespace YouVisio.Silverlight.TextDiff
{
    public interface IPartsRetriever<in TSource, TPart>
    {
        TSource Source { set; }
        void Set(TSource source, IEqualityComparer<TPart> comparer = null);
        TPart GetByIndex(int index);
        int Length { get; }
        bool Contains(TPart part);
        bool IndexIsWithin(int index);
    }
}